TOP

Uniones SQL

SQL JOIN

La expresión JOIN se utiliza para unir filas de dos o más tablas en función de una columna relacionada entre ellas.


Veamos un ejemplo de la tabla "Orders" ("Pedidos"):

ProductIDOrderIDCustomerIDEmployeeIDOrderDateShipperID
1102489051996-07-043
2102498161996-07-051
3102503441996-07-082

Luego mire el ejemplo de la tabla "Customers" ("Clientes"):

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.5021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.5023Mexico

Tenga en cuenta que la columna "CustomerID" en la tabla "Orders" hace referencia a "CustomerID" en la tabla "Customers". La relación entre las dos tablas anteriores es la columna "CustomerID".

Luego podemos crear la siguiente declaración SQL (que contiene INNER JOIN) que selecciona registros que tienen valores coincidentes en ambas tablas:

Run SQLSELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID

y esto producirá algo como esto:

OrderIDCustomerNameOrderDate
10308Ana Trujillo Emparedados y helados1996-09-18
10365Antonio Moreno Taquería1996-11-27
10355Around the Horn1996-11-15
10383Around the Horn1996-12-16
10289B's Beverages1996-08-26

Diferentes tipos de SQL JOIN

Estos son los diferentes tipos de JOIN en SQL:

  • (INNER) JOIN: Devuelve registros que tienen valores coincidentes en ambas tablas
  • LEFT (OUTER) JOIN: Devuelve todos los registros de la tabla izquierda y los registros correspondientes de la tabla derecha
  • RIGHT (OUTER) JOIN: Devuelve todos los registros de la tabla derecha y los registros coincidentes de la tabla izquierda
  • FULL (OUTER) JOIN: Devuelve todos los registros si hay una coincidencia en la tabla izquierda o derecha


  • SQL INNER JOIN  SQL LEFT JOIN  SQL RIGHT JOIN  SQL FULL OUTER JOIN